Иногда стандартной эфирной справки бывает недостаточно и требуются данные о факте каждого воспроизведения. Для данной задачи можно использовать API.
Внимание! Каждый месяц плееры отправляют на сервер visiobox.cloud несколько миллиардов записей о факте воспроизведения. Для того, чтобы база данных не была очень большой и не терялась производительность, сервер агрегирует эти данные в эфирные справки и удаляет логи воспроизведений старше 7 дней. Поэтому если запросить логи, то возможно получить только лог последних семи дней. Если вам нужны всегда актуальные логи, то нужно их запрашивать раз в сутки и сохранять у себя.
Второй вариант - купить свою серверную лицензию. В таком случае у вас не будет ограничений по срокам хранения логов в базе (при этом нужно думать о разумном балансе необходимости иметь такой архив и производительности).
Запрос данных с коробки осуществляется через RELAY
https://exchange.visiobox.cloud
Логин-пасс будет выдан по запросу
Авторизация: OAuth
Коробки (серверы):
curl -H "Authorization: OAuth <token>" 'https://exchange.visiobox.cloud/v1/ls/boxes'
Организации:
https://exchange.visiobox.cloud/v1/ls/organizations
Сюда попадают только те организации, которые дали разрешение на доступ к своим логам
Рекламодатели:
https://exchange.visiobox.cloud/v1/ls/odvertisers
можно передавать ?organization_id=1_1&organization_id=1_2
Устройства:
https://exchange.visiobox.cloud/v1/ls/players
можно передавать ?organization_id=1_1&organization_id=1_2
Кампании:
https://exchange.visiobox.cloud/v1/ls/od/campaigns
можно передавать ?organization_id=1_1&organization_id=1_2
Воспроизведения:
https://exchange.visiobox.cloud/v1/ls/playback_item_playbacks?max_id=1234
можно передавать ?organization_id=1_1&organization_id=1_2. Если отвечает 503, значит, надо подождать N секунд и повторить запрос с теми же параметрами. Например
https://exchange.visiobox.cloud/v1/ls/playback_item_playbacks?max_id=1234&organization_id=3_490
Спустя N минут в ответе будет ссылка на архив вида
{"url": "http://visiobox.cloud/reports/JndeRbz3gxShgkHC35BZl8KCcmLzfGMY2VmXJuBDsCqKbJzfi2JMlVMCKP6obO.json.gz"}